草庐IT

java - 用于数据库代码的 JUnit

全部标签

ruby - 需要文件而不执行代码?

这里我有两个文件:文件.rbdefmethodputs"Thiswon'tbeoutputted."endputs"Thiswillbeoutputted."主.rbrequire"./file"当运行main.rb时,它会加载file.rb中的所有代码,所以我会得到“这将被输出”。在屏幕上。是否可以在不运行代码的情况下加载文件?因为我想加载所有方法(也在模块和类中)而不必在这些范围之外执行代码。 最佳答案 Isitpossibletoloadafilewithouthavingittorunthecode?不,ruby文件中的所有

ruby-on-rails - 如何在不初始化 Rails 的情况下从 schema.rb 创建数据库?

我正在尝试从schema.rb创建我所有的表我使用了命令:“rakedb:schema:load”但是,这失败了,因为在我的一个初始化器中,它引用了一个显然不存在的模型/表(因为数据库是空的)我可以注释掉这些行,然后再次运行schema:load,但是有其他选择吗? 最佳答案 可能最快的方法是将有问题的初始化程序移动到应用程序外部的临时目录,然后运行您的模式加载。但是,如果这不起作用,或者由于某种原因不是一个选项,您总是可以通过创建一个简单的rails应用程序来执行模式加载来解决这个问题:创建一个新的Rails应用:railsnew

ruby-on-rails - 尝试更新数据库值时,rails update_attributes 返回 false

希望这里有人能给我指出正确的方向。我有一个ControllerUpdatedef运行“update_attributes”。目前它返回false,没有错误消息。我是Ruby的新手,但不是编码的新手,这让我困惑了好几天!我正在尝试使用下面指定的值更新用户模型和数据库。defupdate#getcurrentlyloggedinuser@user=current_user#updateuserparamsbasedoneditform...if@user.update_attributes(params[:user])redirect_toprofile_path,:notice=>"Su

ruby - 将 unicode 代码点转换为 Ruby 中的字符串字符

我有来自unicode数据库的这些值,但我不确定如何将它们转换为人类可读的形式。这些到底叫什么?他们在这里:U+2B71FU+2A52DU+2A68FU+2A690U+2B72FU+2B4F7U+2B72B如何将这些转换为可读的符号? 最佳答案 怎么样:#Usingpackputs["2B71F".hex].pack("U")#Usingchrputs(0x2B71F).chr(Encoding::UTF_8)在Ruby1.9+中你还可以:puts"\u{2B71F}"即\u{}转义序列可用于解码Unicode代码点。

ruby-on-rails - 生成独特的,难以猜测的 “coupon”代码

MyRails应用程序需要为用户生成电子优惠券。给定的每个优惠券都应具有唯一的优惠券代码,可以在我们的系统上兑换。例如,免费墨西哥卷饼的优惠券。UserA收到免费卷饼的优惠券,然后UserB收到免费卷饼的优惠券。2张优惠券应具有唯一的优惠券代码。生成像这样不容易伪造的代码的最佳方法是什么?我不希望用户输入随机数字和兑换其他人的优惠券的成功率很高。我想我想找的是像礼品卡,背面有一个唯一的编号。 最佳答案 该代码必须不可猜测,因为在给用户奖励之前,您可以执行的唯一验证就是检查他们输入的代码是否在“已发布”代码列表中。这意味着该格式中所有

ruby-on-rails - Heroku 上的 Rails 4.0.1,无法创建数据库

我无法让rakedb:migrate在Heroku上的Rails4.0.1应用程序上运行。我猜我没有正确配置postgres...但是阅读heroku上的文档并没有真正帮助,我不确定该怎么做。我不太了解heroku或postgres。任何帮助或资源将不胜感激。让我知道是否还有其他我可以发布的内容。(此外,如果重要的话,我正在使用设计)当我运行herokurunrakedb:migrate时,我得到了这个:Running`rakedb:migrate`attachedtoterminal...up,run.5077PG::UndefinedTable:ERROR:relation"use

ruby-on-rails - Rails 5 如何清除或删除生产 postgres 数据库

我正在尝试删除生产数据库,以便重新开始。当我从rails4升级到rails5时,它现在正在保护生产数据库不被意外删除。它在我运行rakedb:reset时显示以下错误消息。/app#rakedb:resetActiveRecord::SchemaMigrationLoad(1.8ms)SELECT"schema_migrations".*FROM"schema_migrations"(1.6ms)SELECT"ar_internal_metadata"."value"FROM"ar_internal_metadata"WHERE"ar_internal_metadata"."key"=

ruby - 如何禁用数据库 :schema:dump for migrations

我不希望Rails3在每次迁移时生成我的模式。如何正确禁用它?谢谢 最佳答案 对于仍在寻找在迁移后禁用数据库转储的方法的任何人,rails4中现在可以使用配置,可以像这样将其设置为false:config.active_record.dump_schema_after_migration=false会阻止它。此更改中已添加配置-https://github.com/rails/rails/pull/13948 关于ruby-如何禁用数据库:schema:dumpformigrations

ruby - Rails,如何迁移大量数据?

我有一个运行旧版本Spree(开源购物车)的Rails3应用程序。我正在将它更新到最新版本。这需要我在数据库上运行大量迁移以与最新版本兼容。但是,应用程序当前的数据库大约为300mb,要在我的本地计算机(macosx10.7、4gbram、2.4GHzCore2Duo)上运行迁移需要三天以上的时间才能完成。我能够使用AmazonEC2实例(高I/O按需实例,四倍超大)将这个时间减少到仅16小时。但是16小时仍然太长,因为我必须关闭网站才能执行此更新。有没有人有任何其他建议来降低这个时间?或提高迁移性能的任何提示?仅供引用:在Amazon实例上使用Ruby1.9.2和Ubuntu。

ruby-on-rails - 我的应用程序一直在创建数据库连接,我该如何追踪原因?

我有一个在Heroku上运行的RubyonRails应用程序。我不断在日志中收到这些消息:2015-05-05T16:11:14Zapp[postgres.27102]:[AQUA]connectionreceived:host=xx.xxx.xx.26port=602782015-05-05T16:11:14Zapp[postgres.27102]:[AQUA]connectionauthorized:user=postgresdatabase=somedb2015-05-05T16:11:14Zapp[postgres.27103]:[AQUA]connectionreceived